text: Allocate popovers
authorMatthias Clasen <mclasen@redhat.com>
Sat, 4 May 2019 18:01:29 +0000 (18:01 +0000)
committerMatthias Clasen <mclasen@redhat.com>
Tue, 28 May 2019 20:25:15 +0000 (20:25 +0000)
We need to do the same thing the menu button
does, and call gtk_native_check_resize for
all our popovers

gtk/gtktext.c

index fc908c358a01323795393bce2892c13eb31e0dec..531fb52285b30ab363d0c7f58088b5537cfd9b63 100644 (file)
@@ -66,6 +66,7 @@
 #include "gtktypebuiltins.h"
 #include "gtkwidgetprivate.h"
 #include "gtkwindow.h"
+#include "gtknative.h"
 
 #include "a11y/gtktextaccessible.h"
 
@@ -2174,6 +2175,7 @@ gtk_text_size_allocate (GtkWidget *widget,
 {
   GtkText *self = GTK_TEXT (widget);
   GtkTextPrivate *priv = gtk_text_get_instance_private (self);
+  GtkEmojiChooser *chooser;
 
   priv->text_baseline = baseline;
 
@@ -2189,6 +2191,16 @@ gtk_text_size_allocate (GtkWidget *widget,
    */
   if (gtk_widget_get_realized (widget))
     gtk_text_recompute (self);
+
+  chooser = g_object_get_data (G_OBJECT (self), "gtk-emoji-chooser");
+  if (chooser)
+    gtk_native_check_resize (GTK_NATIVE (chooser));
+
+  if (priv->emoji_completion)
+    gtk_native_check_resize (GTK_NATIVE (priv->emoji_completion));
+
+  if (priv->magnifier_popover)
+    gtk_native_check_resize (GTK_NATIVE (priv->magnifier_popover));
 }
 
 static void